专利摘要:
The method comprising: establishing a connection between the client device and an access point connected to a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request that includes the current network configuration parameters of the client device; sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responder of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions to the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
公开号:BE1027452B1
申请号:E20205528
申请日:2020-07-14
公开日:2021-10-27
发明作者:Venkateswaran Narayanan;Sethuraman Vijayakumar;Alexander Punnamoottil Jacob;Anandakumar Gopalsamy;Ambika Nagarajaiah;Dayal Madhukar Rai
申请人:Zebra Tech;
IPC主号:
专利说明:

SYSTEM, METHOD AND DEVICE FOR UPDATE OF NETWORK CONFIGURATION PARAMETERS
BACKGROUND In environments (e.g. warehouses) in which significant numbers of wireless devices, such as mobile barcode scanners, are deployed, the devices are often connected to a wireless network located within the warehouse. The network may be logically or physically divided into a plurality of sub-networks. Roaming the devices between the subnets can be time consuming and lead to excessive network load.
SUMMARY OF THE INVENTION According to an aspect of the invention, there is provided a method in a client device for updating network configuration parameters, the method comprising establishing a connection between the client device and an access point connected to a set of other client devices, detecting a connectivity event on the client device, generating a configuration authentication request with current network configuration parameters of the client device, sending the configuration authentication request for delivery to the set of other client devices, in response to sending the configuration authentication request, receiving a configuration authentication response from a responding of the other client devices, and, in response to the configuration verification response indicating mismatching connectivity conditions on the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
Optionally or additionally, the method may further comprise, in response to the configuration verification response indicating matching connectivity conditions on the responding client device, maintaining the current network configuration parameters on the client device.
Optionally or additionally, the connectivity event may include roaming the client device from a first access point to a second access point.
Optionally or additionally, the configuration verification request may include a roaming indicator.
Optionally or additionally, the connectivity event may include a loss of connectivity to a gateway device.
Optionally or additionally, the configuration verification response may indicate whether the responding device is connected to the gateway device.
Optionally or additionally, initiating the network reconfiguration process may include sending a network packet from the client device.
Optionally or additionally, the method may further receive another configuration verification request from another client device; and determining whether to respond to the other configuration verification request.
Optionally or additionally, determining whether to respond to the further configuration verification request may include receiving an instruction to respond from the access point.
Optionally or additionally, determining whether to respond to the further configuration verification request may be based on an association identifier of the client device.
Optionally or additionally, if determining whether to respond to the further configuration verification request is affirmative, the method may further comprise generating a further configuration verification response by comparing the further configuration verification request with current connectivity conditions on the client device.
Optionally or additionally, sending the configuration verification request may include sending a broadcast frame to the access point to have the access point deliver the configuration verification request to the set of other client devices, or sending the configuration verification request directly to the set of other client devices.
According to another aspect of the invention, there is provided a client device comprising a communication interface, a network controller connected to the communication interface, the network controller being configured to establish a connection between the client device and an access point connected to a set of other client devices. to detect a connectivity event on the client device, to generate a configuration verification request including current network configuration parameters of the client device, to send the configuration verification request to be delivered to the set of other client devices, in response to sending the configuration verification request, to receive a configuration verification response from a responding client device from one of the other client devices, and, in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, to perform a network reset configuration process on the client device to obtain new network configuration parameters.
Optionally or additionally, the network controller may be further configured to indicate matching connectivity conditions on the responding client device in response to the configuration verification response, to maintain the current network configuration parameters on the client device.
Optionally or additionally, the connectivity event may include roaming the client device from a first access point to a second access point.
Optionally or additionally, the configuration verification request may include a roaming indicator.
Optionally or additionally, the connectivity event may include a loss of connectivity to a gateway device.
Optionally or additionally, the configuration verification response may indicate whether the responding device is connected to the gateway device.
Optionally or additionally, the network controller may be configured to initiate the network reconfiguration process to transmit a network packet.
Optionally or additionally, the network controller may be further configured to receive a further configuration verification request from another client device, and to determine whether to respond to a further configuration verification request.
Optionally or additionally, the network controller may be further configured to determine whether to respond to the further configuration verification request, in order to receive an instruction to respond from the access point.
Optionally or additionally, the network controller may be configured to determine whether to respond to the further configuration verification request is based on an association identifier of the client device.
Optionally or additionally, if a determination as to whether to respond to the further configuration verification request is affirmative, the network controller may be further configured to generate a further configuration verification response by comparing the further configuration verification request with current connectivity conditions of the client device.
Optionally or additionally, the network controller may be further configured to send the configuration verification request, to send a broadcast frame to the access point to have the access point deliver the configuration verification request to the set of other client devices, or to send the configuration verification request directly to the set. other client devices.
According to another aspect of the invention, there is provided a system comprising an access point, and a client device comprising a communication interface and a network controller, the network controller being configured to establish a connection between the client device and the access point connected to a set of other client devices, to detect a connectivity event on the client device, to generate a configuration verification request including current network configuration parameters of the client device, to send the configuration verification request for delivery to the set of other client devices, in response to sending the configuration verification request, a receive a configuration verification response from a responder of one of the other client devices, and in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, a network initiate a reconfiguration process on the client device to obtain new network configuration parameters, wherein the access point is configured to receive the configuration verification request, and to select the responding client device from the set of other client devices. BRIEF DESCRIPTION OF THE VARIOUS VIEWS
OF THE DRAWINGS The accompanying figures, where like reference numerals refer to identical or functionally similar elements in the individual views, together with the detailed description below, are incorporated into and form part of the specification, and serve to illustrate embodiments of concepts incorporating the claimed invention. further illustrate and explain various principles and advantages of those forms of embodiments. FIG. 1 is a diagram illustrating a communication system FIG. 2 is a block diagram of certain components of a client wireless computing device of FIG. 1. FIG. 3 is a flowchart of a method for updating network configuration parameters. FIG. 4 is a diagram of the system of FIG. 1 after roaming a client wireless computing device. FIG. 5 is a flowchart of a method of generating configuration verification responses. Those skilled in the art will appreciate that elements in the figures are illustrated for simplicity and clarity and are not necessarily drawn to scale. For example, the dimensions of some elements in the figures may be exaggerated relative to other elements to help improve understanding of embodiments of the present invention. The components of the apparatus and method are represented, where appropriate, by conventional symbols in the drawings, showing only those specific details relevant to understanding the embodiments of the present invention so as not to obscure the disclosure with details readily apparent. will be to one of ordinary skill in the art with the benefit of the disclosure herein.
DETAILED DESCRIPTION Examples disclosed herein are directed to a method in a client device for updating network configuration parameters, the method comprising: establishing a connection between the client device and an access point connected to a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device; sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responding one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions at the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
Additional examples disclosed herein are directed to the client device, including: a communications interface; a network controller connected to the communication interface, the network controller configured to: establish a connection between the client device and an access point connected to a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device; sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responding one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions at the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
Further examples disclosed herein are directed to a system, comprising: an access point; and a client device comprising a communication interface and a network controller, the network controller configured to: establish a connection between the client device and the access point associated with a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device; sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request; receiving a configuration verification response from a responder of one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters; wherein the access point is configured to receive the configuration verification request, and to select the responding client device from the set of other client devices.
FIG. 1 shows a communication system 100 including a plurality of wireless client computing devices, five examples 104-1, 104-2, 104-3, 104-4, and 104-5 are illustrated (collectively referred to as the wireless client computing devices 104, and generally referred to as as a wireless client computing device 104). Greater or lesser numbers of client devices 104 may be provided in other embodiments, and indeed the number of client devices present in system 100 at any one time may vary. The wireless client computing devices 104 are also referred to herein simply as devices 104. The system 100 implements a wireless network, such as a wireless local area network (WLAN), which allows the devices 104 to communicate with each other and with other computing devices, either within the WLAN or connected to a external network.
The system 100 implements the above WLAN through a plurality of access points (APs) 108, four examples 108-1, 108-2, 108-3 and 108-4 are shown in FIG. 1. Each AP 108 provides a coverage area within which the devices 104 can establish wireless connections to the APs 108 (illustrated in dotted lines in FIG. 1). As will be appreciated, a greater or lesser number of APs 108 may be provided in other embodiments. The APs 108 can be distributed across a facility such as a warehouse, office complex, campus, or the like. The devices 104 can be moved around the facility, for example as the operators of the devices move through the facility. Each device 104 can therefore roam between the APs 108, establishing wireless connections to different APs 108 depending on the current location of the device 104.
In addition, a device 104 may periodically lose communication with one or more elements of the system 100, e.g., due to network congestion, physical obstructions in the vicinity of the device 104, and the like. Roaming and connection losses are generally referred to as connectivity events in the discussion below. The devices 104, as discussed in more detail herein, perform various actions to adapt to connectivity events and reconfigure local network configuration settings as needed, while assessing the impact of such reconfiguration on the network infrastructure and operation. of the devices 104 themselves.
The APs 108 are configured to deploy a single wireless network, e.g., identified by a common service set identifier (SSID), by the facility. However, as will be apparent to those skilled in the art, the infrastructure supporting the APs 108 may be divided into two or more separate networks, either physical or logical, e.g., to facilitate network management. In the present example, the system 100 implements two separate virtual local area networks (VLANs). In particular, a first VLAN is provided through APs 108-1 and 108-2, which are connected to a first gateway 112-
1. A second VLAN is provided via APs 108-3 and 108-4, which are connected to a second gateway 112-2. Additional network components such as switches and WLAN controllers are not shown for clarity of illustration. Although the APs 108 and/or gateways 112 can be physically connected via backend connections and the above switches, the implementation of separate VLANs separates the APs 108 and gateway 112 from the first VLAN from the APs 108 and gateway 112 from the second VLAN. Traffic can therefore only travel between VLANs, and between a VLAN and an external network 114 (eg a wide area network (WAN) such as the Internet), via a central router 116. The router 116 may also include firewall and/or other implement network management functionality. In addition to separating the system 100 into multiple VLANs, the system 100 is separated into multiple subnetworks (also referred to as subnets) in the present example. Specifically, of a set of network addresses (e.g., IP addresses) available for assignment to devices within the system 100, a first subset is used exclusively within the first VLAN, and a second subset is used exclusively within the second VLAN. That is, the gateway 112-1, which in the present example also implements an addressing server (eg, a Dynamic Host Configuration Protocol (DHCP) server), assigns network addresses to the APs 108-1 and 108-2 as well as to all client devices 104 connected to it from a specific subset of network addresses that are available system-wide.
As a result of the above separation of the network infrastructure in the system 100, the network configuration of a device 104 roaming from an AP 108 in the first VLAN (and associated subnet) to an AP 108 in the second VLAN (and associated subnet) requires updating for the device 104 to continue communicating with other entities in the system 100. For example, each device 104 stores various network configuration parameters, including a network address (e.g., an IP address), a subnet mask, and one or more network addresses of the corresponding gateway 112 with which the device 104 is currently associated. For example, the device 104 may store both a Media Access Control (MAC) address and an IP address of the relevant gateway 112. When roaming to an AP 108 in a different VLAN, the device 104 must obtain a new network address and subnet mask, as well as new gateway identifiers.
Updating network configuration parameters on a device 104 can be accomplished in several ways. For example, each device 104 can release (i.e., delete) all network configuration parameters when roaming to another AP 108 and request new configuration parameters, e.g., by sending a DHCP request. However, when the new AP 108 is in the same VLAN and subnet as the previous AP 108 to which the device 104 was connected, such a process may be unnecessary and thereby cause an excessive load on the network. Furthermore, such a process may adversely affect ongoing communication sessions on the device 104, such as a Voice over IP (VoIP) call between the device 104 and another computing device.
As will be discussed in detail below, the devices 104 of the system 100 perform various actions to update network configuration parameters, while mitigating the impact of such updates on the network load and/or on ongoing communication sessions on the devices 104 .
Before discussing the functionality of the devices 104, certain internal components of the devices 104 will be discussed with reference to FIG. 2. FIG. 2 illustrates components of a generic device 104. That is, each of the client devices 104 in the system 100 includes the components shown in FIG. 2, although the client devices 104 may have heterogeneous form factors and implementations of the components shown.
The device 104 includes a central processing unit (CPU), also referred to as processor 200, which is connected to a non-temporary computer-readable storage medium, such as a memory 204. The memory 204 contains any suitable combination of volatile memory (eg random access memory (RAM) )) and non-volatile memory (eg read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash). Processor 200 and memory 204 each include one or more integrated circuits (ICs).
The device 104 also includes at least one input device and at least one output device illustrated in FIG. 2 as an input/output device 208 connected to the processor 200. The input device includes any suitable, or combination of suitable, a touch screen, a keyboard, a trigger (e.g. to start the execution of an encoding task) and the like. The output device includes any suitable, or combination of suitable, a display (e.g. integrated with the above touch screen), a speaker and the like. The input/output device 208 is configured to receive input and provide data representative of the received input to the processor 200, and to receive output from the processor 200 and present the output, e.g., through the emission of sound from the speaker, the display of visual indications on the display and the like.
The device 104 also includes a communications interface 212, which allows the device 104 to exchange data with other computing devices, such as the access points 108. The communications interface 212 includes any suitable hardware (e.g., transmitters, receivers, network interface controllers, and the like) enabling the device 104 can communicate, eg via the above-mentioned WLAN.
The components of the device 104 are interconnected by communication buses (not shown), and are powered by a battery or other power source, through the above communication buses, or by separate power buses (not shown).
The memory 204 of the device 104 stores a number of applications, each comprising a number of computer readable instructions that the processor 200 can execute. The execution of the above instructions by the processor 200 causes the device 104 to implement certain functionality, as discussed herein. The applications are therefore configured to perform that functionality in the discussion below. In the present example, the memory 204 of the device 104 stores a communication control application 216, also referred to herein as the application 216. The device 104 is configured, via execution of the application 216 by the processor 200, to detect certain connectivity events and initiate processes to update a repository 220 of network configuration parameters stored in the memory 204 in response to such events. The device 104 is also configured, via execution of the application 216, to assist other devices 104 in updating their network configuration parameters upon detection of connectivity events on such other devices 104.
In other examples, the processor 200, as configured by the execution of the application 216, is implemented as one or more specifically configured hardware elements, such as field-programmable gate arrays (FPGAs) and/or application-specific integrated circuits (ASICs). The functionality implemented by the application 216, in combination with the network configuration parameters in the repository 220, may also be partially or fully implemented within the communications interface 212, e.g., by a controller in the interface 212 (discrete of the processor 200). The functionality implemented by the application 216 may also be shared between a controller within the interface 212 and the processor 200. In general, therefore, it can be said that the functionality described herein is implemented by a network controller, which is implemented by one of the the above mechanisms (eg the processor 200 alone, a controller of the interface 212, and the like). Referring now to FIG. 3, a method 300 for updating network configuration parameters is illustrated. The method 300 will be described in connection with its performance on the system 100. More specifically, the method 300 as described below is performed by the devices 104 in the system 100, with reference to the components of each device 104 as illustrated in FIG. 2. At block 305, the device 104 detects a connectivity event. Depending on the nature of the detected connectivity event, the device 104 proceeds to block 310 or block 315. Specifically, when the connectivity event is a roaming event, in which the device 104 has established a connection to a new AP 108, it proceeds device 104 advance to block
310. FIG. 4 illustrates an example performance of a detected roaming connectivity event in block 305. In particular, the device 104-1 has been physically moved within the facility from the location of the device 104-1 shown in FIG. 1. As a result, the device 104-1 has initiated a connection 400 with the AP 108-3. Following the establishment of the connection 400, the device 104-1 is configured to disconnect from the AP 108-1 to which the device 104-1 was previously connected (via the link 404). In other words, the roaming event detected in block 305 may be an event initiated by the device 104 itself.
As noted earlier, the AP 108-3 is in a different VLAN and subnet than the AP 108-1. Therefore, the network configuration parameters of the client device 104-1 must be updated.
Returning to FIG. 3, at block 310, the device 104-1 generates a configuration verification request that includes a roaming indicator. The configuration verification request in the present example is a broadcast frame (i.e. a link layer message, corresponding to level 2 of the OSI model) addressed to the AP 108-3. The address (eg MAC address) of the AP 108-3 is available to the device 104-1 as a result of establishing the connection 400, allowing the device 104-1 to send messages to the AP 108-3 despite other network configuration parameters of the device 104-1 are no longer valid. That is, the IP address and subnet mask of the device 104-1 are no longer valid, and the gateway MAC and IP addresses currently stored in the repository 220 are also no longer valid, as they correspond to the gateway 112 -1.
The configuration verification request includes a broadcast instruction for causing the AP 108-3, upon receipt of the configuration verification request, to broadcast the configuration verification request to all devices 104 connected to the AP 108-3. The configuration verification request also includes certain network configuration parameters of the device 104-1, and a flag indicating that the configuration verification request was sent in response to the completion of a roaming process.
Returning to FIG. 4 illustrates a configuration verification request 408 sent to the AP 108-3 from the device 104-1, and broadcast to any other device 104 connected to the AP 108-3 (in this case, to the device 104-4). As can be seen in FIG. 4, the request 408 contains a broadcast instruction, as well as a network address (specifically, an IP address) of the device 104-1, a subnet mask, and a network address of the gateway 112-1. The network address and subnet, as well as the gateway address, were obtained by the device 104-1 from the gateway 112-1 while the device 104-1 was connected to the AP 108-1, and are therefore no longer valid. The request 408 also includes a roaming indicator, which in the present example is a binary flag, where the value "1" indicates that the device 104-1 has roamed to the AP 108-3. Conversely, a value of "0" would indicate that the request 408 was not sent in response to a roaming event. A wide variety of other roaming indicators can also be used, including alphanumeric strings, message headers and the like. The contents of the configuration verification request when the connectivity event is not a roaming event is discussed in more detail below, after the current description of the roaming scenario.
Referring again to FIG. 3, at block 320, the device 104-1 broadcasts the configuration verification request generated in block 310. In the present example, as noted above, broadcasting is accomplished by instructing the AP 108-3 to broadcast the request 408 to send. In other examples, device 104-1 may broadcast request 408 directly. At block 325, the device 104-1 receives a configuration verification response to the request 408. The response is generated by one of the other devices 104 connected to the same AP 108 (ie, the AP 108-3 in the current example), and can be sent to the device 104-1 directly by that other device 104, or through the AP 108-3. Of particular note is that the response is not generated by the gateway 112-2 or other backend infrastructure.
The configuration verification response, in general, indicates whether connectivity conditions at the responding device 104 match those indicated in the configuration verification request 408. If the configuration verification request 408 was sent in response to roaming from the device 104-1, as in the present example, the configuration verification response to whether the device 104-1 is still connected to the same VLAN and subnet (that is, whether the AP 108-3 that the device 104-1 has roamed to is in the same VLAN and subnet as the AP 108-1 of where the device has roamed 104-1). In other words, the connectivity conditions of the responding device 104 are defined at least by the subnet mask and gateway address of the responding device.
If the subnet mask and gateway address in the configuration authentication request 408 match the subnet mask and gateway address of the responding device 104, the responding device 104 and the requesting device (104-1, in the current example) are both correctly configured to communicate over the same VLAN and subnet.
Generating the configuration verification response is discussed in more detail below.
At block 330, device 104-1 determines whether the configuration verification response indicates matching connectivity conditions on the responding device.
If the determination is affirmative, the execution of the method 300 ends. As mentioned above, in the roaming scenario, the configuration verification response indicates whether the device 104-1 is still connected to the same VLAN and subnet after the roaming procedure that the execution of the method 300 has initiated.
When the device 104-1 is connected to the same VLAN and subnet as before, the network configuration parameters in the repository 220 remain valid and no further action is required.
This would be the case, for example, if the device
104-1 then roamed from the AP 108-3 to the AP 108-4.
However, when device 104-1 is no longer connected to the same VLAN and subnet - that is, if the determination in block 330 is negative - device 104-1 instead goes to block 335 and initiates a network reconfiguration process.
Executing block 335 may include, for example, deleting the current network configuration parameters in repository 220 and sending a network packet (e.g., a DHCP request) to discover gateway 112-2 and obtain a new IP address.
Turning now to FIG. 5, the generation of the configuration verification response will be described.
FIG. 5 illustrates a method 500 for generating configuration verification responses, which are performed by each device 104 that receives a broadcast configuration verification request as described above.
Therefore, in the present example, the method 500 is performed by the device 104-4, which is the only other device connected to the AP 108-3. At block 505, the device 104-4 receives the configuration verification request, via the access point 108-3. At block 510, device 104-4 determines whether to respond to the configuration verification request.
As noted above, one of the receiving devices 104 generates the configuration verification response.
The devices 104 therefore implement a deterministic selection mechanism to allow any one of the devices 104 to respond (to avoid flooding the network). For example, each device 104 may be configured to make the determination in block 510 based on an association identifier (AID) assigned to the device 104 by the AP 108-3. For example, the devices 104 may each store a predetermined responder AID in memory, and the determination at block 510 is whether the device 104 has an AID corresponding to the predetermined responder AID.
Other mechanisms for making the determination at block 510 need not rely on the AIDs of the devices 104. In further embodiments, the determination at block 510 is made by receiving an instruction from the AP 108 to respond. In other words, in such embodiments, the APs 108 select which client device 104 is to respond to configuration verification requests, and instruct that client device 104 to respond. The instruction may be inserted into the configuration verification request itself by the AP 108, or sent as a separate message.
If the determination in block 510 is negative, execution of the method 500 ends. However, if the determination in block 510 is affirmative, as is the case for device 104-4 in the present example, device 104-4 proceeds to block 515. At block 515, the responding device (ie, device 104-4 in this example) determines whether the configuration verification request includes the above-mentioned roaming indicator.
If the determination at block 515 is affirmative, as in the case of request 408, the responding device 104 proceeds to block 520. If the determination at block 515 is negative, the responding device 104 proceeds instead of block 525. Blocks 520 and 525 both assessments of connectivity conditions of the responding device 104 are performed to determine whether connectivity conditions of the responding device 104 match the connection conditions indicated in the configuration verification request. The judgment in block 520, which corresponds to a request including a roaming indicator, will be described below. The rating in block 525 is described after describing the roaming related rating.
At block 520, the responding device 104 determines whether at least a subset of the configuration parameters in the authentication request match those in the responding device's repository 220
104. So in the present example, referring again to FIG. 4, at block 520, the responding device 104-4 determines whether the IP address in the request 408, as modified by the subnet mask in the request 408, falls within the range of IP addresses assigned to the VLAN in which the AP 108- 3 is located. For example, the IP address and subnet mask in the request 408 can be compared with the IP address and subnet mask in a repository 220-4 of the device 104-4. In lieu of, or in addition to, the above equation, device 104-4 may determine whether the gateway addresses in request 408 and repository 220-4 match. If the determination in block 520 is affirmative, the responding device 104 proceeds to block 530, and sends a configuration verification response indicating matching connection conditions. Such a response leads to an affirmative determination in block 330 on the requesting device. As will be apparent from FIG. 4, in the present example, the determination at block 520 is negative, and device 104-4 therefore proceeds to block 535. At block 535, device 104-4 sends a configuration verification response to device 104-1 indicating connectivity conditions on the device 104-4 do not match those indicated in the request 408 (ie that the device 104-1 has been moved to another VLAN by roaming to the AP 108-3). The device 104-1 then makes the negative determination in block 330 mentioned above, and proceeds to block 335. According to the mechanisms described above, the system 100 may enable a roaming device 104 such as the device 104-1 to determine whether to initiate a process to update network configuration parameters while minimizing the impact on the network infrastructure. For example, the roaming device 104-1 is not required to attempt to reach its currently configured gateway 112-1 to determine that the gateway 112-2 cannot be reached to initiate the update process.
The functionality described above also allows the devices 104 to adapt to certain other connectivity events. In particular, returning to block 315 of FIG. 3, if the connectivity event detected in block 305 is loss of connectivity to a gateway 112 in the absence of roaming, the device 104 generates a configuration verification request that omits the roaming indicator but is otherwise as shown in FIG. 4. The responding device 104 determines, in block 525, whether the gateway 112 to which the responding device 104 is connected is reachable. For example, the responding device 104 may send an Address Resolution Protocol (ARP) request to the relevant gateway 112. If no response is received, then the determination in block 525 is negative, and responding device 104 proceeds to block 530. As noted above, responding device 104 sends a configuration verification response in block 530 indicating that matching connectivity conditions exist at the responding device. and the requesting device 104. That is, both devices 104 cannot reach the gateway 112, and the requesting device 104 does not necessarily need to update its configuration parameters. Instead, the gateway 112 may simply be offline, in which case requesting updated configuration parameters would be ineffective. If the gateway 112 is reachable by the responding device 104, however, the determination at block 525 is affirmative and the responding device 104 sends a configuration verification response indicating non-matching connectivity conditions. Such a response results in a negative determination at block 330 and initiation of reconfiguration on the requesting device 104 at block 335.
Specific embodiments have been described in the foregoing specification. However, those skilled in the art realize that various modifications and changes can be made without departing from the scope of the invention as set forth in the claims below. Accordingly, the specification and figures are to be considered in an illustrative rather than a restrictive sense, and all such modifications are intended to be included within the scope of the present disclosure.
The benefits, solutions to problems, and any element(s) that may cause or enhance a benefit or solution should not be construed as critical, required, or essential features or elements of any or all of the claims. The invention is defined solely by the appended claims including any changes made during the granting process of this application and all equivalents of those claims as granted. For clarity and concise description, features are described herein as part of the same or separate embodiments, however, it will be understood that the scope of the invention may include embodiments having combinations of all or some of the features described. It will be appreciated that the embodiments shown have the same or similar components, except where they are described as different.
In addition, relational terms such as first and second, above and below, and the like may be used throughout this document only to distinguish one entity or action from another entity or action without necessarily requiring any actual such relationship or sequence between such entities or actions or imply. The terms "comprises", "comprising", "has", "have", "contains", "containing", "with" or any other variant thereof are intended to cover a non-exclusive inclusion such that a process, process, article or device that includes a list of elements includes not only those elements, but may include other elements not expressly stated or inherent in such process, method, article or device. An element followed by "comprises...a", "has...a", "contains...a", "with...a" does not exclude, without further restrictions, the existence of additional identical elements in the process, the method , has, contains, from, the item or device comprising the element. The term "one" is defined as one or more unless expressly stated herein. The terms "substantially", "substantially", "about" or any other version thereof are defined as being within the meaning of those skilled in the art, and in a non-limiting embodiment, the term is defined as being within 10 %, in another version within 5%, in another version within 1% and in another version within 0.5%. The term "linked" as used herein is defined as connected, although not necessarily directly and not necessarily mechanically. A device or structure that is "configured" in a certain way is at least configured that way, but can also be configured in ways not listed.
It will be appreciated that some embodiments may include one or more specialized processors (or "processing devices") such as microprocessors, digital signal processors, custom processors, and field programmable gate arrays (FPGAs) and unique stored program instructions (including both software and software). firmware) that control the one or more processors to implement, in combination with certain non-processor circuitry, some, most, or all of the functions of the method and/or device described herein. Alternatively, some or all of the functions may be implemented by a state machine that has no stored program instructions, or in one or more application-specific integrated circuits (ASICs), in which each function or some combinations of particular functions are implemented as custom logic. Of course, a combination of the two approaches could be used.
In addition, an embodiment may be implemented as a computer-readable storage medium on which computer-readable code is stored for programming a computer (e.g., comprising a processor) to perform a method as described and claimed herein. Examples of such computer readable storage media include, but are not limited to, a hard disk, a CD-ROM, an optical storage device, a magnetic storage device, a ROM (read-only memory), a PROM (programmable read-only memory), a EPROM (erasable programmable read-only memory), an EEPROM (electrically erasable programmable read-only memory), and a flash memory. It is further expected that notwithstanding potentially significant effort and many design choices motivated by, for example, time available, current technology and economic considerations, if guided by the concepts and principles disclosed herein, those skilled in the art will readily be able to use such software instructions and programs and ICs with minimal experimentation. to generate.
The Summary of the Disclosure is provided to enable the reader to quickly determine the nature of the technical disclosure. It has been submitted with the understanding that it will not be used to interpret the scope or meaning of the claims. In addition, it can be seen from the foregoing Detailed Description that various functions have been grouped together in different embodiments for the purpose of streamlining disclosure. This manner of disclosure should not be interpreted as reflecting an intent that the claimed performances require more features than are expressly stated in any claim.
As the following claims show, the inventive subject matter of the invention lies precisely in less than all the features of a single disclosed embodiment.
Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing alone as a subject matter claimed separately.
The simple fact that certain measures are recited in mutually different claims does not indicate that a combination of these measures is not useful for an advantage.
Many variants will be apparent to those skilled in the art.
All variants are deemed to fall within the scope of the invention defined in the following claims.
权利要求:
Claims (25)
[1]
A method in a client device for updating network configuration parameters, the method comprising: establishing a connection between the client device and an access point associated with a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device; sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responding one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
[2]
The method of claim 1, further comprising: in response to the configuration verification response indicating matching connectivity conditions on the responding client device, maintaining the current network configuration parameters on the client device.
[3]
The method of claim 1 or 2, wherein the connectivity event comprises roaming the client device from a first access point to a second access point.
[4]
The method of any preceding claim, wherein the configuration verification request includes a roaming indicator.
[5]
The method of any preceding claim, wherein the connectivity event comprises a loss of connectivity to a gateway device.
[6]
The method of claim 5, wherein the configuration verification response indicates whether the responding device is connected to the gateway device.
[7]
The method of any preceding claim, wherein initiating the network reconfiguration process comprises sending a network packet from the client device.
[8]
The method of any preceding claim, further comprising: receiving a further configuration verification request from another client device; and determining whether to respond to the further configuration verification request.
[9]
The method of claim 8, wherein determining whether to respond to the further configuration verification request comprises receiving an instruction to respond from the access point.
[10]
The method of claims 8 or 9, wherein determining whether to respond to the further configuration verification request is based on an association identifier of the client device.
[11]
The method of any one of claims 8 to 10, further comprising: if determining whether to respond to the further configuration verification request is affirmative, generating a further configuration verification response by comparing the further configuration verification request with current connectivity conditions on the client device.
[12]
The method of any preceding claim, wherein transmitting the configuration verification request comprises one of: transmitting a broadcast frame to the access point for the access point to deliver the configuration verification request to the set of other client devices; or sending the configuration verification request directly to the set of other client devices.
[13]
A client device comprising: a communication interface; a network controller connected to the communication interface, the network controller configured to: establish a connection between the client device and an access point connected to a set of other client devices; detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device; sending the configuration verification request to be delivered to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responder of one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters.
[14]
The client device of claim 13, wherein the network controller is further configured, in response to the configuration verification response indicating matching connectivity conditions on the responding client device, to maintain the current network configuration parameters on the client device.
[15]
The client device of claim 13 or 14, wherein the connectivity event comprises roaming the client device from a first access point to a second access point.
[16]
The client device of any one of claims 13 to 15, wherein the configuration verification request includes a roaming indicator.
[17]
The client device of any one of claims 13 to 16, wherein the connectivity event comprises a loss of connectivity to a gateway device.
[18]
The client device of any one of claims 13 to 17, wherein the configuration verification response indicates whether the responding device is connected to the gateway device.
[19]
The client device of any one of claims 13 to 18, wherein the network controller is configured to initiate the network reconfiguration process to send a network packet.
[20]
The client device of any one of claims 13 to 19, wherein the network controller is further configured to: receive a further configuration verification request from another client device; and determine whether to respond to a further configuration verification request.
[21]
The client device of claim 20, wherein the network controller is further configured to determine whether to respond to the further configuration verification request in order to receive an instruction to respond from the access point.
[22]
The client device of claim 20 or 21, wherein the network controller is configured to determine whether to respond to the further configuration verification request is based on an association identifier of the client device.
[23]
The client device of any one of claims 20 to 22, wherein the network controller is further configured for: if determining whether to respond to the further configuration verification request is affirmative, generating a further configuration verification response by comparing the further configuration verification request with current connectivity conditions of the client device.
[24]
The client device of any one of claims 13 to 23, wherein the network controller is further configured to send the configuration verification request for: sending a broadcast frame to the access point to have the access point deliver the configuration verification request to the set of other client devices; or sending the configuration verification request directly to the set of other client devices.
[25]
25. A system comprising: an access point; and a client device comprising a communication interface and a network controller, the network controller being configured to: establish a connection between the client device and the access point associated with a set of other client devices); detecting a connectivity event on the client device; generating a configuration verification request including current network configuration parameters of the client device;
sending the configuration verification request for delivery to the set of other client devices; in response to sending the configuration verification request, receiving a configuration verification response from a responder of one of the other client devices; and in response to the configuration verification response indicating mismatched connectivity conditions on the responding client device, initiating a network reconfiguration process on the client device to obtain new network configuration parameters; wherein the access point is configured to receive the configuration verification request, and to select the responding client device from the set of other client devices.
类似技术:
公开号 | 公开日 | 专利标题
US20200059761A1|2020-02-20|Systems and methods for enabling private communication within a user equipment group
US8261339B2|2012-09-04|Dynamic network tunnel endpoint selection
KR101409384B1|2014-06-18|Methods, systems, and computer readable media for providing dynamic origination-based routing key registration in a diameter network
JP5575642B2|2014-08-20|Method and apparatus for base station neighbor discovery in a communication system
US10667304B2|2020-05-26|Low latency service connection setup in new service area
US10892965B2|2021-01-12|Data network management
KR20170015989A|2017-02-10|Context aware neighbor discovery
KR102024332B1|2019-09-23|Mme reselection method and mme
JP6599546B2|2019-10-30|How to enable unroot resource discovery in the service layer
US20170005981A1|2017-01-05|Address identifier allocation method, related device, and system
US20210250192A1|2021-08-12|Methods to update pfd rules for applications and related network nodes
CN103986638A|2014-08-13|Method and device for binding multiple public network links for ADVPN tunnel
CN106375355B|2020-02-28|Load balancing processing method and device
BE1027452B1|2021-10-27|SYSTEM, METHOD AND DEVICE FOR UPDATE NETWORK CONFIGURATION PARAMETERS
WO2019096050A1|2019-05-23|Data transmission method, device, equipment, and readable storage medium
US20210315028A1|2021-10-07|Method and network node of setting up a wireless connection
US10863410B1|2020-12-08|Methods for packet data network service slicing with microsegmentation in an evolved packet core and devices thereof
WO2019137539A1|2019-07-18|Software upgrade method and system
US20180270319A1|2018-09-20|Network device, wireless communication terminal and non-transitory computer readable medium
CN110430268B|2022-03-11|Static resource routing method and device based on distributed service
WO2012137173A2|2012-10-11|Method and apparatus for enabling wireless connectivity
US11070514B2|2021-07-20|System and method for domain name system | service selection
US20210006462A1|2021-01-07|Handling unsolicited requests from devices
EP3869763A1|2021-08-25|Method for delivering an audio and/or video content in a mobile network infrastructure
US10999379B1|2021-05-04|Liveness detection for an authenticated client session
同族专利:
公开号 | 公开日
BE1027452A1|2021-02-12|
WO2021022031A1|2021-02-04|
US11178015B2|2021-11-16|
US20210036928A1|2021-02-04|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
US20180020497A1|2015-08-19|2018-01-18|Yamaha Corporation|Communication system, communication device, and method for reconnecting communication system|
EP1967031B1|2005-12-28|2010-02-17|Panasonic Corporation|Method for verifications and fast qos establishment|
WO2008085204A2|2006-12-29|2008-07-17|Prodea Systems, Inc.|Demarcation between application service provider and user in multi-services gateway device at user premises|
US11134102B2|2009-01-28|2021-09-28|Headwater Research Llc|Verifiable device assisted service usage monitoring with reporting, synchronization, and notification|
US9900759B2|2009-11-04|2018-02-20|Qualcomm Incorporated|Method and apparatus for peer discovery in a wireless communication network|
US10091636B2|2010-11-19|2018-10-02|Qualcomm Incorporated|Probe messaging for direct link connections|
CN103369630B|2012-03-30|2017-02-15|华为终端有限公司|An AP response method, a method for discovering an AP, an AP, and a terminal|
EP2842355A2|2012-04-27|2015-03-04|Interdigital Patent Holdings, Inc.|Methods and apparatuses for optimizing proximity data path setup|
US10404532B2|2015-04-10|2019-09-03|Comcast Cable Commnications, LLC|Virtual gateway control and management|
US10042651B2|2015-11-24|2018-08-07|Intel Corporation|Techniques to configure multi-mode storage devices in remote provisioning environments|
CN109417728A|2016-06-30|2019-03-01|英特尔Ip公司|For authorizing the device with enabled/disabled enhancing covering function|
法律状态:
2021-11-17| FG| Patent granted|Effective date: 20211027 |
优先权:
申请号 | 申请日 | 专利标题
US16/529,433|US11178015B2|2019-08-01|2019-08-01|System, method and apparatus for updating network configuration parameters|
[返回顶部]